浏览量 4435
2018/12/18 21:19
坑1:html在django 的mako模版中进行转义:
数据库内html标记转义:
数据库中既有这样的数据:
<p>&lt;p&gt;&amp;lt;p&amp;
也有这样的数据:
<li>针对小厂商和大厂商不同灰度策略支持</li>
通过下面的方法可以将<转义为可渲染的html页面内容:
<%! import HTMLParser %>
% for item in items:
${HTMLParser.HTMLParser().unescape(item.comment)}
% endfor
坑2:老版本的的django和ckeditor 兼容性不好,导致后台在是使用富文本编辑器类似ckeditor保存数据时会自动添加html标签,用新版本1.11以上的django和ckeditor未发现此问题。
解决方法:
修改ckeditor的config.js文件
/**
* @license Copyright (c) 2003-2018, CKSource - Frederico Knabben. All rights reserved.
* For licensing, see https://ckeditor.com/legal/ckeditor-oss-license
*/
CKEDITOR.editorConfig = function (config) {
// Define changes to default configuration here. For example:
config.htmlEncodeOutput = false;
config.entities = false;
config.entities = false;
config.basicEntities = false;
config.entities_greek = false;
config.entities_latin = false;
config.htmlEncodeOutput = false;
// config.language = 'fr';
config.enterMode = CKEDITOR.ENTER_BR;
// config.shiftEnterMode = CKEDITOR.ENTER_BR;
//
// config.uiColor = '#AADC6E';
// config.removePlugins = 'elementspath'; //这个只是不显示body和p标签,并没有去掉自动增加的p标签
//config.startupMode = 'source'; //启动源码
};
上一篇 搜索 下一篇